//
//  HMVisitorTableViewController.swift
//  新浪微博
//
//  Created by 饶鹏伟 on 16/4/8.
//  Copyright © 2016年 饶鹏伟. All rights reserved.
//

import UIKit

//多继承
// OC中有多继承吗? 如果没有用什么替代 -> 协议 面试题
//swift 必选的协议方法如果不实现 就报错

class HMVisitorTableViewController: UITableViewController,HMVisitorLoginViewDelegate {
    
    
    //定义一个变量 记录用户是否登录了 如果没有登录 显示引导登录界面
    var userLogin=HMUserAccountViewModel.sharedAccountViewModel.userLogin
    //定义一个全局 的引导界面的全局属性
    var visitorView: HMVisitorLoginView?
    
    //根据用户是否登录 来选择显示 tableView 还是引导用户登录的界面
    //1. loadView 是苹果专门为手写代码准备的, 一旦实现了loadView并且没有实现super xib/sb就会自动失效
    //2. 在loadView如果根视图为nil 会自动调用loadView去实例化根视图
    //3.如果要自定义根视图 可以在loadView方法中去执行
    
    override func loadView() {
        
        userLogin ? super.loadView() : prepareForVisitorLoginView()
        
    }
    
    
    //如果没有登录 执行这个方法 手动创建引导登录界面
    private func prepareForVisitorLoginView() {
        
        //自定义一个引导登录界面
        visitorView=HMVisitorLoginView()
        //设置控制器的根视图就是自定义的引导登录视图
        view=visitorView
        
        //设置代理对象
        visitorView?.visitorDelegate=self
        
        //设置导航条
        navigationItem.leftBarButtonItem = UIBarButtonItem(title: "登录", style: .Plain, target: self, action: "userWillLogin")
        navigationItem.rightBarButtonItem = UIBarButtonItem(title: "注册", style: .Plain, target: self, action: "userWillRegister")
        
    }

    
    // 实现协议方法
     func userWillLogin() {
        print("VC中的登录")
      //点击登录
        let oauth=HMOAuthViewController()
        let nav=UINavigationController(rootViewController: oauth)
        presentViewController(nav, animated: true, completion: nil)
    }
    
     func userWillRegister() {
        print("VC中的注册")
        
        
        
    }
    

    override func viewDidLoad() {
        super.viewDidLoad()


    }
    

   }
